Skip to content

New arch#36

Open
ankitpunchh wants to merge 5 commits intodayitv89:masterfrom
ankitpunchh:new-arch
Open

New arch#36
ankitpunchh wants to merge 5 commits intodayitv89:masterfrom
ankitpunchh:new-arch

Conversation

@ankitpunchh
Copy link

This pull request modernizes and migrates the react-native-quick-firebase library to support React Native's New Architecture, including TurboModules and codegen. It updates both Android and iOS native modules, simplifies the JavaScript interface, and bumps the package to version 2.0.0. The changes improve compatibility, maintainability, and performance for newer React Native projects.

New Architecture & TurboModule Migration:

  • Migrated the native modules for both Android and iOS to use TurboModules and codegen, implementing the required interfaces and updating class structures (RNQuickFirebase now extends generated specs and implements TurboModule interfaces) [1] [2] [3] [4] [5].
  • Updated the JavaScript bridge to use TurboModuleRegistry.getEnforcing instead of NativeModules, and simplified method signatures and error handling [1] [2].

Android Build & Code Updates:

  • Upgraded Android Gradle Plugin and SDK versions, added support for compileSdkVersion, minSdkVersion, and targetSdkVersion overrides, and updated dependencies to use the latest Firebase and React Native libraries [1] [2].
  • Refactored the Android native module to use TurboModules, removed legacy ReactPackage code, and improved promise error handling [1] [2] [3] [4] [5].

iOS Build & Code Updates:

  • Migrated iOS native code to Objective-C++ (.mm), implemented TurboModule and codegen interfaces, and improved error handling and method signatures [1] [2].
  • Updated the podspec to require iOS 13+, include Objective-C++ sources, and add Firebase/Auth as a dependency [1] [2].

Package & Codegen Configuration:

  • Bumped package version to 2.0.0 and set minimum react-native peer dependency to >=0.71.0 [1] [2].
  • Added codegenConfig for automatic code generation and included TypeScript as a dev dependency.

Removed Legacy Code:

  • Deleted old iOS implementation in RNQuickFirebase.m in favor of the new Objective-C++ TurboModule implementation.

These changes collectively bring the library up to date with the latest React Native standards and tooling, ensuring better performance and compatibility with modern projects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant